<?php
namespace ImiApp\Module\Member\Model\Base;

use Imi\Model\Model as Model;
use Imi\Model\Annotation\DDL;
use Imi\Model\Annotation\Table;
use Imi\Model\Annotation\Column;
use Imi\Model\Annotation\Entity;

/**
 * 广告置顶订单 基类
 * @Entity
 * @Table(name="fa_adv_top_order", id={"id"})
 * @DDL("CREATE TABLE `fa_adv_top_order` (
  `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
  `adv_id` int(10) unsigned DEFAULT NULL COMMENT '广告ID',
  `time_status` enum('1','2','3','4') DEFAULT NULL COMMENT '时间类型:1=小时,2=天,3=月,4=年',
  `num` int(10) DEFAULT NULL COMMENT '数量',
  `s` int(10) unsigned DEFAULT NULL COMMENT '时长秒',
  `time` int(10) unsigned DEFAULT NULL COMMENT '时间',
  `pay_time` int(10) unsigned DEFAULT NULL COMMENT '支付时间',
  `pay_status` enum('1','2','3','4') DEFAULT '1' COMMENT '支付状态:1=待支付,2=已支付,3=已退款,4=已超时',
  `uid` int(10) unsigned DEFAULT NULL COMMENT '用户ID',
  `money` decimal(10,2) DEFAULT NULL COMMENT '费用',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='广告置顶订单'")
 * @property int $id 
 * @property int $advId 广告ID
 * @property string $timeStatus 时间类型:1=小时,2=天,3=月,4=年
 * @property int $num 数量
 * @property int $s 时长秒
 * @property int $time 时间
 * @property int $payTime 支付时间
 * @property string $payStatus 支付状态:1=待支付,2=已支付,3=已退款,4=已超时
 * @property int $uid 用户ID
 * @property float $money 费用
 */
abstract class AdvTopOrderBase extends Model
{
    /**
     * id
     * @Column(name="id", type="int", length=10, accuracy=0, nullable=false, default="", isPrimaryKey=true, primaryKeyIndex=0, isAutoIncrement=true)
     * @var int
     */
    protected $id;

    /**
     * 获取 id
     *
     * @return int
     */ 
    public function getId()
    {
        return $this->id;
    }

    /**
     * 赋值 id
     * @param int $id id
     * @return static
     */ 
    public function setId($id)
    {
        $this->id = $id;
        return $this;
    }

    /**
     * 广告ID
     * adv_id
     * @Column(name="adv_id", type="int", length=10, accuracy=0, nullable=true, default="", isPrimaryKey=false, primaryKeyIndex=-1, isAutoIncrement=false)
     * @var int
     */
    protected $advId;

    /**
     * 获取 advId - 广告ID
     *
     * @return int
     */ 
    public function getAdvId()
    {
        return $this->advId;
    }

    /**
     * 赋值 advId - 广告ID
     * @param int $advId adv_id
     * @return static
     */ 
    public function setAdvId($advId)
    {
        $this->advId = $advId;
        return $this;
    }

    /**
     * 时间类型:1=小时,2=天,3=月,4=年
     * time_status
     * @Column(name="time_status", type="enum", length=0, accuracy=0, nullable=true, default="", isPrimaryKey=false, primaryKeyIndex=-1, isAutoIncrement=false)
     * @var string
     */
    protected $timeStatus;

    /**
     * 获取 timeStatus - 时间类型:1=小时,2=天,3=月,4=年
     *
     * @return string
     */ 
    public function getTimeStatus()
    {
        return $this->timeStatus;
    }

    /**
     * 赋值 timeStatus - 时间类型:1=小时,2=天,3=月,4=年
     * @param string $timeStatus time_status
     * @return static
     */ 
    public function setTimeStatus($timeStatus)
    {
        $this->timeStatus = $timeStatus;
        return $this;
    }

    /**
     * 数量
     * num
     * @Column(name="num", type="int", length=10, accuracy=0, nullable=true, default="", isPrimaryKey=false, primaryKeyIndex=-1, isAutoIncrement=false)
     * @var int
     */
    protected $num;

    /**
     * 获取 num - 数量
     *
     * @return int
     */ 
    public function getNum()
    {
        return $this->num;
    }

    /**
     * 赋值 num - 数量
     * @param int $num num
     * @return static
     */ 
    public function setNum($num)
    {
        $this->num = $num;
        return $this;
    }

    /**
     * 时长秒
     * s
     * @Column(name="s", type="int", length=10, accuracy=0, nullable=true, default="", isPrimaryKey=false, primaryKeyIndex=-1, isAutoIncrement=false)
     * @var int
     */
    protected $s;

    /**
     * 获取 s - 时长秒
     *
     * @return int
     */ 
    public function getS()
    {
        return $this->s;
    }

    /**
     * 赋值 s - 时长秒
     * @param int $s s
     * @return static
     */ 
    public function setS($s)
    {
        $this->s = $s;
        return $this;
    }

    /**
     * 时间
     * time
     * @Column(name="time", type="int", length=10, accuracy=0, nullable=true, default="", isPrimaryKey=false, primaryKeyIndex=-1, isAutoIncrement=false)
     * @var int
     */
    protected $time;

    /**
     * 获取 time - 时间
     *
     * @return int
     */ 
    public function getTime()
    {
        return $this->time;
    }

    /**
     * 赋值 time - 时间
     * @param int $time time
     * @return static
     */ 
    public function setTime($time)
    {
        $this->time = $time;
        return $this;
    }

    /**
     * 支付时间
     * pay_time
     * @Column(name="pay_time", type="int", length=10, accuracy=0, nullable=true, default="", isPrimaryKey=false, primaryKeyIndex=-1, isAutoIncrement=false)
     * @var int
     */
    protected $payTime;

    /**
     * 获取 payTime - 支付时间
     *
     * @return int
     */ 
    public function getPayTime()
    {
        return $this->payTime;
    }

    /**
     * 赋值 payTime - 支付时间
     * @param int $payTime pay_time
     * @return static
     */ 
    public function setPayTime($payTime)
    {
        $this->payTime = $payTime;
        return $this;
    }

    /**
     * 支付状态:1=待支付,2=已支付,3=已退款,4=已超时
     * pay_status
     * @Column(name="pay_status", type="enum", length=0, accuracy=0, nullable=true, default="1", isPrimaryKey=false, primaryKeyIndex=-1, isAutoIncrement=false)
     * @var string
     */
    protected $payStatus;

    /**
     * 获取 payStatus - 支付状态:1=待支付,2=已支付,3=已退款,4=已超时
     *
     * @return string
     */ 
    public function getPayStatus()
    {
        return $this->payStatus;
    }

    /**
     * 赋值 payStatus - 支付状态:1=待支付,2=已支付,3=已退款,4=已超时
     * @param string $payStatus pay_status
     * @return static
     */ 
    public function setPayStatus($payStatus)
    {
        $this->payStatus = $payStatus;
        return $this;
    }

    /**
     * 用户ID
     * uid
     * @Column(name="uid", type="int", length=10, accuracy=0, nullable=true, default="", isPrimaryKey=false, primaryKeyIndex=-1, isAutoIncrement=false)
     * @var int
     */
    protected $uid;

    /**
     * 获取 uid - 用户ID
     *
     * @return int
     */ 
    public function getUid()
    {
        return $this->uid;
    }

    /**
     * 赋值 uid - 用户ID
     * @param int $uid uid
     * @return static
     */ 
    public function setUid($uid)
    {
        $this->uid = $uid;
        return $this;
    }

    /**
     * 费用
     * money
     * @Column(name="money", type="decimal", length=10, accuracy=2, nullable=true, default="", isPrimaryKey=false, primaryKeyIndex=-1, isAutoIncrement=false)
     * @var float
     */
    protected $money;

    /**
     * 获取 money - 费用
     *
     * @return float
     */ 
    public function getMoney()
    {
        return $this->money;
    }

    /**
     * 赋值 money - 费用
     * @param float $money money
     * @return static
     */ 
    public function setMoney($money)
    {
        $this->money = $money;
        return $this;
    }

}
